﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Dome2
{
    class Program
    {
        protected static int a;
        static void Main(string[] args)
        {                 
            Console.WriteLine("请选择一个机器人类型;1.炒菜  2.传菜");
            Console.WriteLine(a);
            string kind = Console.ReadLine();

            Robot robot;
            robot = Testone("kind");
            Console.WriteLine(a);
            if (a==2)
            {
                Console.WriteLine("请选择你想吃的菜：1.中国菜 2.美国菜 3.印度菜");
                int num = Convert.ToInt32(Console.ReadLine());
                switch (num)
                {
                    case 1:
                        robot = new CookRobot("炒菜", AllEat.中国菜);
                        break;
                    case 2:
                        robot = new CookRobot("炒菜", AllEat.印度菜);
                        break;
                    case 3:
                        robot = new CookRobot("炒菜", AllEat.美国菜);
                        break;
                    default:
                        robot = new CookRobot("炒菜", AllEat.中国菜);
                        break;
                }
                robot.Working();
            }
            else {
                robot = Testone("传菜");
                robot.Working();
            }



            //Console.WriteLine(Testone(kind));

        }

//主类中定义一个方法，形参数据类型是string，返回值数据类型是Robot，
 //方法中实现如果传入的字符串是“炒菜”，那就返回CookRobot的实例（当然是要用Robot的引用指向的），
//如果传入的字符串是“传菜”，那就返回DeliveryRobot的实例。
//Main方法中：用户输入所选择的机器人的功能，根据用户的输入Robot执行对应的功能。
        public static Robot Testone(string action)
        {

            Robot robot;
            if (action.Equals ("炒菜"))
            {
                a = 2;
                robot = new CookRobot("炒菜", AllEat.中国菜);
                return robot;
                
            }
            else if(action.Equals ("传菜")){
                robot = new DeliveryRobot("传菜", 5);
                return robot;
            }
            else
            {
                robot = new DeliveryRobot("传菜",5);
                return robot;
            }           
        }
    }
}
